package dao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;

public class DAOSubsidios {
	
		private static DAOSubsidios instancia;
		
		private DAOSubsidios()
		{
			
		}
		public static DAOSubsidios getInstancia()
		{
			if (instancia == null)
				instancia = new DAOSubsidios();
			return instancia;
		}
		
		private static String INSERTs ="insert into totalsubsidios (importe) values(?)";

		public boolean notificar(double total)
		{
				//OBTENGO LA CONEXION
				
				Connection conn= PoolConexiones.getPoolConnection().getConnection();
				
				//VERIFICAMOS QUE LA CONEXION FUE CORRECTA
		
					if(conn!=null){
					  try {
						//CREO UN OBJETO QUE REPRESENTA LA CONSULTA SQL
						 PreparedStatement s;
						 //LE PASO EL INSERT
						 s= conn.prepareStatement(INSERTs);
						//LE PASAMOS LOS DATOS AL INSERT, EN EL ORDEN
						//QUE DECLARAMOS EN LA CONSTANTE
						 int registrosguardados = 0;	
						s.setDouble (1, total);
						registrosguardados = s.executeUpdate();
		
						  //CERRAMOS EL QUERY REPRESENTADO POR S
						  s.close();
						 //VERIFICAMOS QUE HAYA GUARDADO UN REGISTRO y cargamos los ss
						if (registrosguardados>0){
							return true;
						}
						else
						{
							return false;
						}
					 }
					 catch (SQLException e) {
						 
						 System.err.print("No se pudo informar el subsidio");
						 e.printStackTrace();
						 return false;
						 
					}
					finally{
						try{
							//CERRAMOS LA CONEXION
							PoolConexiones.getPoolConnection().releaseConnection(conn);
						}
					   
						catch(Exception e){
						   System.err.print("No se pudo cerrar la conexion");
						   e.printStackTrace();
						   return false;
					   }
					}
				
				}//if
			//NO SE PUDO REALIZAR LA CONEXION
			else{
				return false;
			}
		}

}
